package com.xlh.service.course;

import com.xlh.dto.course.TaskDTO;
import com.xlh.param.course.CreateOrUpdateTaskParam;
import com.xlh.param.course.TaskInfoParam;

import java.util.List;

/**
 * 任务
 * <p>
 * Created by lx on 2019/1/28.
 */
public interface TaskService {

    /**
     * 获取任务
     *
     * @param courseId  课程id
     * @param chapterId 章节id
     * @param param     任务参数
     * @return
     */
    List<TaskDTO> listTask(Long courseId, Long chapterId, TaskInfoParam param);

    /**
     * 修改任务顺序
     *
     * @param courseId  课程id
     * @param chapterId 章节id
     * @param taskIds   任务id集合
     */
    void updateTaskSort(Long courseId, Long chapterId, List<Long> taskIds);

    /**
     * 添加任务
     *
     * @param chapterId 章节id
     * @param param     添加的参数
     */
    void createTask(Long chapterId, CreateOrUpdateTaskParam param);

    /**
     * 修改任务
     *
     * @param taskId 任务id
     * @param param  修改参数
     */
    void updateTask(Long taskId, CreateOrUpdateTaskParam param);

}
